
class Cart{
    constructor(){
        this.$cart = $('#aa');
        this.init();
        this.addEvent();
    }

    // init(){
    //     let cookie_str = cookie.get('products') ? cookie.get('products') : '';
    //     let cookie_obj = convertStrToObj(cookie_str);
    //     let sum = 0;
    //     for(let key in cookie_obj){
    //         sum += cookie_obj[key].num;
    //     }
    //     // cookie_obj[].num = sum;
    //     // cookie.set('products',JSON.stringify(cookie_obj),{expires : 7,path : '/'});
    //     $('#num').text(`${sum}件`);
    //     $('.a3 input').val(sum);
    // }




    init(){
        cookie.del('products',{path : '/'})
        // cookie.del('products',{path : '/'})
        let id =  $('.right').attr('data-good-id');
        let name = $('.right .name').text();
        let price = parseInt($('.right .price .price-a span').text());
        let src = $('.color .a1-img img').attr('src');

                let cookie_str = cookie.get('products') ? cookie.get('products') : '';
        let cookie_obj = cookie.convertObj(cookie_str);

        if(!(id in cookie_obj)){
            cookie_obj[id] = {
                name,
                price,
                src,
                num : 1
            }
        }
        cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });
    }
    // init(){
    //     // console.log(11111)
    //     // cookie.del('products',{path : '/'})
    //     // let id =  $('.right').attr('data-good-id');
    //     // let name = $('.right .name').text();
    //     // let price = parseInt($('.right .price .price-a span').text());
    //     // let src = $('.color .a1-img img').attr('src');
    //     // let num = $('.a3 input').val();


    //     let cookie_str = cookie.get('products') ? cookie.get('products') : '';
    //     let cookie_obj = cookie.convertObj(cookie_str);

    //     // if (id in cookie_obj) {
    //     //     cookie_obj[id].num++;
    //     // } else {
    //     //     cookie_obj[id] = {
    //     //         name,
    //     //         price,
    //     //         src,
    //     //         num : 1
    //     //     }
    //     // }
    //     // cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });

    //     let sum = 0;
    //     for(let key in cookie_obj){
    //         sum += cookie_obj[key].num;
    //     }
    //     // alert(sum);
    //     $('#num').text(`${sum}件`);
    //     $('.a3 input').val(sum);

    // }

    // init(){
    //     // cookie.del('products',{path : '/'});
    //     $('#num').text(1 + '件');
    //     $('.a3 input').val(1);
    // }
    addEvent(){
        // $('#aa').click(function(){

        //     let id =  $(this).parents('.right').attr('data-good-id');
        //     let name = $(this).parents('.color').siblings('.name').text();
        //     let price = parseInt( $(this).parents('.color').prev().find('.price-a').find('span').text());
        //     let src = $(this).parent().siblings('.a1').find('.a1-img').find('img').attr('src');
        //     // console.log(111)
        //     let num = $(this).parent().prev().find('input').val();
        //     // console.log(111)
            
        //     // console.log(src)
        //     let cookie_str = cookie.get('products') ? cookie.get('products') : '';
        //     let cookie_obj = cookie.convertObj(cookie_str);
        //     if (id in cookie_obj) {
        //         cookie_obj[id].num++;
        //     } else {
        //         cookie_obj[id] = {
        //             name,
        //             price,
        //             src,
        //             num : 1
        //         }
        //     }
        //     // console.log(cookie_obj[id].num)
        //     cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });
        //     $('#num').text(cookie_obj[id].num + '件');
        //     $('.a3 input').val(cookie_obj[id].num);

        // })


        $("#plus").click(function(){
            
            //id
            let id =  $(this).parents('.right').attr('data-good-id');
            let name = $(this).parents('.color').siblings('.name').text();
            let price = parseInt( $(this).parents('.color').prev().find('.price-a').find('span').text());
            let src = $(this).parent().siblings('.a1').find('.a1-img').find('img').attr('src');
            // let num = $(this).prev().val();

            let cookie_str = cookie.get('products') ? cookie.get('products') : '';
            let cookie_obj = cookie.convertObj(cookie_str);
            if (id in cookie_obj) {
                cookie_obj[id].num++;
            } else {
                cookie_obj[id] = {
                    name,
                    price,
                    src,
                    num : 1
                }
            }
            
            // cookie_obj[id].num ++;
            
            cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });
            $(this).prev().val(cookie_obj[id].num);
            $(this).parent().prev().find('#num').text(cookie_obj[id].num + '件')
            
    })



    $('#minus').click(function(){
        //id
        let id =  $(this).parents('.right').attr('data-good-id');
        let name = $(this).parents('.color').siblings('.name').text();
        let price = parseInt( $(this).parents('.color').prev().find('.price-a').find('span').text());
        let src = $(this).parent().siblings('.a1').find('.a1-img').find('img').attr('src');


        let cookie_str = cookie.get('products') ? cookie.get('products') : '';
        let cookie_obj = cookie.convertObj(cookie_str);

        if (id in cookie_obj) {
            if(cookie_obj[id].num > 1){
                cookie_obj[id].num--;
            }
        } else {
            cookie_obj[id] = {
                name,
                price,
                src,
                num : 1
            }
        }

        // if(cookie_obj[id].num > 1){
        //     cookie_obj[id].num --;
        // }
        if($(this).next().val() > 0){
                    cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });
        $(this).next().val(cookie_obj[id].num);
        $(this).parent().prev().find('#num').text(cookie_obj[id].num + '件');

        }

   })

   $('.a3 input').blur(function(){
    let id =  $(this).parents('.right').attr('data-good-id');
    let name = $(this).parents('.color').siblings('.name').text();
    let price = parseInt( $(this).parents('.color').prev().find('.price-a').find('span').text());
    let src = $(this).parent().siblings('.a1').find('.a1-img').find('img').attr('src');
    let cookie_str = cookie.get('products') ? cookie.get('products') : '';
    let cookie_obj = cookie.convertObj(cookie_str);
    let num = parseInt($(this).val());
    if (id in cookie_obj) {
        if(isNaN(num) || num < 1){
            num = 1;
            cookie_obj[id].num = num;
            
        }
    } else {
        cookie_obj[id] = {
            name,
            price,
            src,
            num : 1
        }
    }
    cookie.set('products', JSON.stringify(cookie_obj), { expires: 7, path: '/' });
    $(this).val(cookie_obj[id].num);
    $('#num').text(`${cookie_obj[id].num}件`);


   // let re = /^\d{1,5}$/g;
    //let aa = $(this).val();
    //if(!re.test(aa)){
      //  alert('此商品最多不能超过5件!')
   // }
   })

}
}
new Cart();


